2.6K Star,一款纯基于PyTorch的强化学习平台
整理 | 叶子
一、软件介绍
Tianshou(天授)是纯基于 PyTorch 的强化学习平台,与现有的主要基于 TensorFlow 的强化学习库不同,Tianshou 没有繁杂的嵌套类、不友好的 API 和速度较慢的代码,其提供了用于构建深度强化学习代理的快速框架和 pythonic API。
二、项目地址
https://github.com/thu-ml/tianshou
三、支持的接口算法
Policy Gradient (PG)
Deep Q-Network (DQN)
Double DQN (DDQN) with n-step returns
Advantage Actor-Critic (A2C)
Deep Deterministic Policy Gradient (DDPG)
Proximal Policy Optimization (PPO)
Twin Delayed DDPG (TD3)
Soft Actor-Critic (SAC)
Tianshou 还支持所有算法并行,所有算法都重新格式化为基于重放缓冲(replay-buffer)模式。
四、特性
快速:使用 laptop(i7-8750H + GTX1060)测试为例,CartPole-v0 任务中,Tianshou 仅需要 3 秒钟即可根据 vanilla 策略梯度来训练代理:python3 test/discrete/test_pg.py --seed 0 --render 0.03
性能对比:
可重复性:具有单元测试,并且单元测试覆盖针对所有已实现算法的完整代理培训过程。单元测试确保了平台的可重复性
模块化:所有算法分解为 4 部分:
__init__
:初始化process_fn
:从重放缓冲区预处理数据(所有算法都重构为基于重放缓冲的算法)__call__
:根据给定的观察值计算操作learn
:从给定的批处理数据中学习优雅灵活:整体代码不到 1500 行,大多数已实现的算法少于 100 行 Python 代码。可以根据需要提供许多灵活的 API。
往期推荐
2021-03-18
2021-03-16
2021-03-15
扫码关注最新动态
公众号ID:fosslab
我就知道你“在看”